// * 获取符合需求的BUG

// 定义查询参数类型
export interface searchRequirementsBugsFrom {
    title_name: string,
    case_names: any,
    begin_time: string | null,
    end_time: string | null,
    page: number,
    page_size: number
}

// 定义公共响应体
export interface Common<T> {
    code: number,
    data: T,
    msg: string
}
// 定义getBugList()接口的
export interface BugList {
    ID: number,
    bugStatus1: number,
    bugStatus2: number,
    bugStatus3: number,
    bugStatus4: number,
    bugStatus5: number,
    bugStatus6: number,
    bugStatus7: number,
    requirementName: string,
    trueTestName: string,
}

export interface postRequirementsBugsData<T> {
    list: T,
    total: number,
    page: number,
    pageSize: number
}
export interface getRequirementsBugsDataList {
    trueTestName: string,
    requirementRelevances: string,
    requirementCreateName: string,
    requirementName: string,
    requirementType: string,
    requirementContent: string,
    beginTime: string,
    endTime: string,
    planBeginTime: string,
    truthBeginTime: string,
    truthEndTime: string,
    truthOnlineTime: string,
    onlineTime: any,
    isOnline: number,
    requirementVersion: string,
    requirementMark: number,
    thisMonthReqirement: number,
    itemTests: any,
    itemRequirementChilds: any,
    itemCases: any,
    ItemItemId: number,
    ItemRequirementMsg: {
        requirementMsg: string,
        ItemRequirementID: number,
        ID: number,
        createAt: any,
        UpdatedAt: any
    },
    itemRequirementTypeId: number,
    requirementBugs: Array<any>,
    bugStatus1: number,
    bugStatus2: number,
    bugStatus3: number,
    bugStatus4: number,
    bugStatus5: number,
    bugStatus6: number,
    bugStatus7: number,
    ID: number,
    createAt: string,
    UpdatedAt: string
}


export interface CommonRequirementBugs {
    item_requirement_id: number,
    bug_title: string,
    bug_level: number,
    create_user_id: number,
    create_user_name: string,
    edit_user_id: number,
    edit_user_ids: number,
    edit_user_name: string,
    end_edit_user_name: string,
    edit_user_names: string,
    edit_num: number,
    bug_status: number,
    bug_tips: string,
    bug_msgs: Array<{
        ID: number,
        ItemRequirementBugId: number,
        UpdateAt: string,
        bug_img_url: string,
        bug_msg: string,
        createAt: string,
        create_user_id: string,
        create_user_name: string,
        edite_status: number,
        to_user_id: number,
        to_user_name: string
    }>,
    bug_img_url: string,
    ID: number,
    createAt: string,
    UpdatedAt: string
}


// 定义根据需求ID获取该需求下所有BUG的响应参数类型
// export interface requirementBugs<T> {
//     code: number,
//     data: T,
//     msg: string
// }

// 定义添加bug弹窗请求参数类型
export interface addBugFrom {
    item_requirement_id: number,
    bug_title: string,
    bug_level: number,
    edit_user_ids: Array<string>,
    bug_status: number,
    bug_msgs: Array<{
        bug_msg: string,
    }>
}

// 定义修改bugLevel请求参数类型
export interface updateBugLevelForm {
    id: number,
    bug_level: number
}

// 定义修改bugRoles请求参数类型
export interface updateBugRoleForm {
    id: number,
    bug_edits: Array<any>
}

// 定义添加bug详情的请求参数类型
export interface addCommentBugForm {
    item_requirement_bug_id: number,
    new_bug_msgs: string
}

// 定义修改bugStatus的请求参数类型
export interface updateBugStatusForm {
    id: number,
    bug_status: number
}

// 定义获取bugStatusList的响应参数类型
export interface getBugStatusListData {
    bug_status: number,
    bug_status_name: string,
    bugStatusColor: string,
    ID: number,
}